package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 设备管理对象 device
 * 
 * @author ruoyi
 * @date 2025-01-15
 */
public class Device extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 设备id */
    private Long deviceId;

    /** 区域id */
    @Excel(name = "区域id")
    private Long areaId;

    /** 矿山id */
    @Excel(name = "矿山id")
    private Long mineId;

    /** 设备名 */
    @Excel(name = "设备名")
    private String deviceName;

    /** 设备类型 */
    @Excel(name = "设备类型")
    private Long deviceTypeId;

    /** 安装时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "安装时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date installationTime;

    /** 上次维护时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "上次维护时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastMaintenanceTime;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 经度 */
    @Excel(name = "经度")
    private BigDecimal longitude;

    /** 纬度 */
    @Excel(name = "纬度")
    private BigDecimal latitude;

    public void setDeviceId(Long deviceId) 
    {
        this.deviceId = deviceId;
    }

    public Long getDeviceId() 
    {
        return deviceId;
    }
    public void setAreaId(Long areaId) 
    {
        this.areaId = areaId;
    }

    public Long getAreaId() 
    {
        return areaId;
    }
    public void setMineId(Long mineId) 
    {
        this.mineId = mineId;
    }

    public Long getMineId() 
    {
        return mineId;
    }
    public void setDeviceName(String deviceName) 
    {
        this.deviceName = deviceName;
    }

    public String getDeviceName() 
    {
        return deviceName;
    }
    public void setDeviceTypeId(Long deviceTypeId) 
    {
        this.deviceTypeId = deviceTypeId;
    }

    public Long getDeviceTypeId() 
    {
        return deviceTypeId;
    }
    public void setInstallationTime(Date installationTime) 
    {
        this.installationTime = installationTime;
    }

    public Date getInstallationTime() 
    {
        return installationTime;
    }
    public void setLastMaintenanceTime(Date lastMaintenanceTime) 
    {
        this.lastMaintenanceTime = lastMaintenanceTime;
    }

    public Date getLastMaintenanceTime() 
    {
        return lastMaintenanceTime;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setLongitude(BigDecimal longitude) 
    {
        this.longitude = longitude;
    }

    public BigDecimal getLongitude() 
    {
        return longitude;
    }
    public void setLatitude(BigDecimal latitude) 
    {
        this.latitude = latitude;
    }

    public BigDecimal getLatitude() 
    {
        return latitude;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("deviceId", getDeviceId())
            .append("areaId", getAreaId())
            .append("mineId", getMineId())
            .append("deviceName", getDeviceName())
            .append("deviceTypeId", getDeviceTypeId())
            .append("installationTime", getInstallationTime())
            .append("lastMaintenanceTime", getLastMaintenanceTime())
            .append("status", getStatus())
            .append("longitude", getLongitude())
            .append("latitude", getLatitude())
            .toString();
    }
}
